package io.geekidea.springbootplus.system.service;

import io.geekidea.springbootplus.framework.common.service.BaseService;
import io.geekidea.springbootplus.framework.core.pagination.Paging;
import io.geekidea.springbootplus.system.entity.SysMember;
import io.geekidea.springbootplus.system.entity.SysUser;
import io.geekidea.springbootplus.system.param.sysmember.SysMemberPageParam;
import io.geekidea.springbootplus.system.param.sysuser.SysUserPageParam;
import io.geekidea.springbootplus.system.vo.SysMemberQueryVo;
import io.geekidea.springbootplus.system.vo.SysUserQueryVo;

import java.util.List;


public interface   SysMemberService extends BaseService<SysMember> {


    Paging<SysMemberQueryVo> getSysMemberPageList(SysMemberPageParam sysMemberPageParam) throws Exception;

    /**
     * 保存
     *
     * @param sysMember
     * @return
     * @throws Exception
     */
    boolean saveSysMember(SysMember sysMember) throws Exception;

    /**
     * 修改
     *
     * @param sysMember
     * @return
     * @throws Exception
     */
    boolean updateSysMember(SysMember sysMember) throws Exception;

    /*根据id查询会员信息*/
    SysMemberQueryVo getMemberById(Integer id) throws Exception;

    /*根据openid查询会员信息*/
    SysMember getMemberByOpenid(String openid) throws Exception;

    /*逻辑删除会员*/
    boolean deleteSysMember(Integer id)  throws Exception;

    /*批量逻辑删除会员*/
    boolean deleteMemberBatchIds(List<Integer> idList) throws Exception;

}
